#ifndef MUDNMUCKPLAYER
#define MUDNMUCKPLAYER

#include <map>
#include <queue>

#include "platinum.h"
#include "mudnmuck.h"
#include "gameobject.h"
#include "cell.h"

class Room;

class Player : public GameObject
{
	private:
		Platinum::Net::TCP::Connection* Conn;
		std::map<std::string, int> CommandMap;
		std::queue<std::string> ChatQ;
		std::queue<Cell* > MoveQ;
		Cell* NextCell, CurrentCell;
		Room* CurrentRoom;
		std::string Name,inmsg,outmsg;
	public:

		  Player(std::string name, Platinum::Net::TCP::Connection* conn);

          void AddToChatQ(std::string msg);
          void SendChat();          
		  void ProcessMoveCommand(std::string OrgCmd);
          void ProcessCommand(std::string msg);
          void ProcessTick();
		  void StopMovement();
};
#endif
